// 社团对接页面js文件
Page({
  data: {
    searchKeyword: '',
    currentCategory: 'all',
    associationList: [
      {
        id: 1,
        name: '泉州留学生创业者协会',
        logo: '/images/association1.png',
        description: '为泉州地区的留学生创业者提供交流、合作、资源对接的平台，促进创业项目落地。',
        memberCount: 200,
        level: '市级',
        category: 'business',
        categoryName: '创业就业'
      },
      {
        id: 2,
        name: '泉州留学文化交流协会',
        logo: '/images/association2.png',
        description: '促进中外文化交流，组织各类文化活动，增强留学生对中国文化的了解。',
        memberCount: 350,
        level: '市级',
        category: 'culture',
        categoryName: '文化交流'
      },
      {
        id: 3,
        name: '泉州留学科技协会',
        logo: '/images/association3.png',
        description: '汇聚留学归国科技人才，推动科技创新和产学研合作。',
        memberCount: 180,
        level: '市级',
        category: 'science',
        categoryName: '科技交流'
      },
      {
        id: 4,
        name: '泉州留学教育联盟',
        logo: '/images/association4.png',
        description: '整合教育资源，为留学生提供教育咨询、职业规划等服务。',
        memberCount: 220,
        level: '市级',
        category: 'education',
        categoryName: '教育资源'
      }
    ],
    hasMore: true,
    showJoinModal: false,
    selectedAssociation: {},
    joinForm: {
      name: '',
      phone: '',
      message: ''
    }
  },

  onLoad: function() {
    // 页面加载时执行
    console.log('社团对接页面加载');
    // 加载社团数据
    this.loadAssociationList();
  },

  onShow: function() {
    // 页面显示时执行
  },

  // 加载社团列表数据
  loadAssociationList: function() {
    wx.showLoading({
      title: '加载中',
    });

    // 模拟网络请求
    setTimeout(() => {
      wx.hideLoading();
      // 实际开发中应该调用接口获取数据
    }, 1000);
  },

  // 搜索输入
  onSearchInput: function(e) {
    this.setData({
      searchKeyword: e.detail.value
    });
  },

  // 搜索社团
  searchAssociation: function() {
    const keyword = this.data.searchKeyword;
    if (!keyword.trim()) {
      wx.showToast({
        title: '请输入搜索关键词',
        icon: 'none'
      });
      return;
    }

    wx.showLoading({
      title: '搜索中',
    });

    // 模拟搜索请求
    setTimeout(() => {
      wx.hideLoading();
      // 实际开发中应该调用搜索接口
      // 这里简单模拟搜索结果
      const filteredList = this.data.associationList.filter(item => 
        item.name.includes(keyword) || item.description.includes(keyword)
      );
      
      this.setData({
        associationList: filteredList,
        hasMore: false
      });
    }, 1000);
  },

  // 切换分类
  switchCategory: function(e) {
    const category = e.currentTarget.dataset.category;
    this.setData({
      currentCategory: category,
      searchKeyword: ''
    });

    wx.showLoading({
      title: '加载中',
    });

    // 模拟分类筛选请求
    setTimeout(() => {
      wx.hideLoading();
      // 实际开发中应该调用分类筛选接口
      // 这里简单模拟筛选结果
      if (category === 'all') {
        // 加载全部数据
        this.loadAssociationList();
      } else {
        const filteredList = this.data.associationList.filter(item => item.category === category);
        this.setData({
          associationList: filteredList
        });
      }
    }, 500);
  },

  // 查看社团详情
  viewAssociationDetail: function(e) {
    const id = e.currentTarget.dataset.id;
    wx.navigateTo({
      url: '/pages/association/detail?id=' + id
    });
  },

  // 加载更多
  loadMore: function() {
    if (!this.data.hasMore) {
      wx.showToast({
        title: '没有更多数据了',
        icon: 'none'
      });
      return;
    }

    wx.showLoading({
      title: '加载中',
    });

    // 模拟加载更多请求
    setTimeout(() => {
      wx.hideLoading();
      // 实际开发中应该调用加载更多接口
      // 这里简单模拟没有更多数据的情况
      this.setData({
        hasMore: false
      });
      
      wx.showToast({
        title: '没有更多数据了',
        icon: 'none'
      });
    }, 1000);
  },

  // 处理加入按钮点击
  handleJoinTap: function(e) {
    // 阻止事件冒泡，避免触发列表项的点击事件
    e.stopPropagation();
    const id = e.currentTarget.dataset.id;
    this.joinAssociation(id);
  },

  // 加入社团
  joinAssociation: function(id) {
    // 查找选中的社团信息
    const association = this.data.associationList.find(item => item.id === id);
    if (association) {
      this.setData({
        showJoinModal: true,
        selectedAssociation: association,
        joinForm: {
          name: '',
          phone: '',
          message: ''
        }
      });
    }
  },

  // 姓名输入
  onNameInput: function(e) {
    this.setData({
      'joinForm.name': e.detail.value
    });
  },

  // 电话输入
  onPhoneInput: function(e) {
    this.setData({
      'joinForm.phone': e.detail.value
    });
  },

  // 留言输入
  onMessageInput: function(e) {
    this.setData({
      'joinForm.message': e.detail.value
    });
  },

  // 关闭加入社团弹窗
  closeJoinModal: function() {
    this.setData({
      showJoinModal: false
    });
  },

  // 阻止事件冒泡
  stopPropagation: function(e) {
    e.stopPropagation();
  },

  // 提交加入社团表单
  submitJoinForm: function() {
    const { name, phone, message } = this.joinForm;
    
    // 表单验证
    if (!name.trim()) {
      wx.showToast({
        title: '请输入姓名',
        icon: 'none'
      });
      return;
    }
    
    if (!phone.trim()) {
      wx.showToast({
        title: '请输入联系方式',
        icon: 'none'
      });
      return;
    }
    
    // 简单的手机号验证
    const phoneReg = /^1[3-9]\d{9}$/;
    if (!phoneReg.test(phone)) {
      wx.showToast({
        title: '请输入正确的手机号码',
        icon: 'none'
      });
      return;
    }

    wx.showLoading({
      title: '提交中',
    });

    // 模拟提交请求
    setTimeout(() => {
      wx.hideLoading();
      // 实际开发中应该调用提交接口
      
      wx.showToast({
        title: '提交成功，请等待审核',
        icon: 'success'
      });
      
      // 关闭弹窗
      this.closeJoinModal();
    }, 1500);
  }
});